package com.easylinkin.linkappapi.investigation.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.easylinkin.linkappapi.investigation.entity.InvestigationTaskModel;

import java.util.List;

/**
 * <p>
 * 排查任务模板 服务类
 * </p>
 *
 * @author TongJie
 * @since 2021-04-15
 */
public interface InvestigationTaskModelService extends IService<InvestigationTaskModel> {

    /**
     * 修改
     * */
    boolean updateInvestigationTaskModel(InvestigationTaskModel investigationTaskModel);

    /**
     * 修改状态
     * */
    boolean updateStatusInvestigationTaskModel(InvestigationTaskModel investigationTaskModel);

    /**
     * 单个查询
     * */
    InvestigationTaskModel getInvestigationTaskModel(Long id);

    /**
     * 查询所有
     * */
    List<InvestigationTaskModel> getInvestigationTaskModelAll();

    /**
     * 分页查询
     * */
    IPage<InvestigationTaskModel> getInvestigationTaskModelPage(Page page, InvestigationTaskModel investigationTaskModel);

    /***
     * 新增
     * */
    boolean addInvestigationTaskModel(InvestigationTaskModel investigationTaskModel);

    /***
     * 删除
     * */
    void deleteBatch(List<InvestigationTaskModel> investigationTaskModelList);

    /**
     * 根据条件查询排查任务模板 及其下的排查内容列表
     * @param investigationTaskModel
     * @return
     */
    List<InvestigationTaskModel> getInvestigationTaskModelWithContents(InvestigationTaskModel investigationTaskModel);
}
